package com.example.mybatis.sqlserver.springbootmybatissqlserver.repository;

import com.example.mybatis.sqlserver.springbootmybatissqlserver.pojo.bean.CategoryBean;
import com.example.mybatis.sqlserver.springbootmybatissqlserver.pojo.bean.CategoryPropertyNameBean;
import com.example.mybatis.sqlserver.springbootmybatissqlserver.pojo.bean.CategoryPropertyValueBean;

import java.util.List;

/**
 * Created by hzy on 2019/2/20.
 */

public interface ICategoryRepository {

    boolean addCategory(CategoryBean bean);

    CategoryBean findCategoryById(String id);

    boolean updateCategory(CategoryBean bean);

    List<CategoryBean> findCategoryByParentId(String parentId);

    boolean deleteCategoryById(String categoryId);
    boolean softDeleteCategoryById(String categoryId);

    List<CategoryPropertyNameBean> listCategoryPropertyName(String categoryId);

    boolean addCategoryProperty(CategoryPropertyNameBean bean);

    CategoryPropertyNameBean findCategoryPropertyById(String propertyId);

    boolean updateCategoryPropertyName(CategoryPropertyNameBean bean);

    boolean addCategoryPropertyValue(CategoryPropertyValueBean valueBean);

    boolean updateCategoryPropertyValue(CategoryPropertyValueBean bean);

    List<CategoryBean> findAllCategory();

    List<CategoryPropertyValueBean> listCategoryPropertyValue(String propertyId);

    String selectTime();


    List<CategoryBean> findCategoryByPaging(int offset, int pageSize);
}

